package com.ynet.middleground.user.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.LinkedHashMap;

/**
 * @program: 2019-10-12_userCenter
 * @description: 员工机构、部门、角色关系查询
 * @author: DaiGaoLe
 * @create: 2019-10-29 17:51
 **/
@Data
@ApiModel(value = "员工机构、部门、角色关系查询", description = "员工机构、部门、角色关系查询")
public class OrganRoleRelationshipDto implements Serializable {
    private static final long serialVersionUID = -4347178987900025694L;
    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id", notes = "用户id")
    private Integer userId;

    /**
     * 用户名称
     */
    @ApiModelProperty(value = "用户名称", notes = "用户名称")
    private String userName;

    /**
     * 角色id
     */
    @ApiModelProperty(value = "角色id", notes = "角色id")
    private Integer roleId;

    /**
     * 角色名称
     */
    @ApiModelProperty(value = "角色名称", notes = "角色名称")
    private String roleName;

    /**
     * 机构/部门id
     */
    @ApiModelProperty(value = "机构/部门id", notes = "机构/部门id")
    private Integer organizationalId;

    /**
     * 机构/部门名称
     */
    @ApiModelProperty(value = "机构/部门名称", notes = "机构/部门名称")
    private String organizationalName;

    /**
     * 描述
     */
    @ApiModelProperty(value = "描述", notes = "描述")
    private String describeStr;

    /**
     * 渠道
     */
    @ApiModelProperty(value = "渠道", notes = "渠道")
    private String channel;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间", notes = "创建时间")
    private LocalDateTime gmtCreate;

    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人", notes = "创建人")
    private Integer createBy;

    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间", notes = "修改时间")
    private LocalDateTime gmtModified;

    /**
     * 修改人
     */
    @ApiModelProperty(value = "修改人", notes = "修改人")
    private Integer modifiedBy;

    /**
     * 当前关系的上一级别的机构id
     */
    //Update By Liwq On 2020-12-01 Start
    //原先是查询第一级别，改成查询当前级别的 上一级别
    //@ApiModelProperty(value = "当前关系的第一级别的机构id", notes = "当前关系的第一级别的机构id")
    @ApiModelProperty(value = "当前关系的上一级别的机构id", notes = "当前关系的上一级别的机构id")
    //Update By Liwq On 2020-12-01 End
    private Integer firstOrganizational;

    /**
     * 机构部门层级结构,倒序。key是id，value是机构或部门名称
     */
    @ApiModelProperty(value = "机构部门层级结构,倒序。key是id，value是机构或部门名称", notes = "机构部门层级结构,倒序。key是id，value是机构或部门名称")
    LinkedHashMap<Integer, String> institutionalSectorHierarchy;

    @ApiModelProperty(value = "业态公司id", notes = "业态公司id")
    private Integer formatId;
}
